package com.i2works.smartluolong.web.entity.flow;

import com.i2works.smartluolong.utils.entity.BaseCommDO;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;

public class FlowInfoDO extends BaseCommDO {

    private Integer id; //
    private Integer itemId; // 事项编号（申请ID或变更ID）
    private String itemName; //
    private String itemType; // 事项类型（标记属于那种事项，可以使用英文字符串代替）
    private Integer userId; // 申请人
    private Integer auditorId; // 审核人
    private Integer itemStatus; // 事项流程状态；默认值：0
    private Integer termLevel;//事项期限级别（1正常，2严重，3超期）；默认值：1
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date deadline;//事项到期期限
    private Integer complete; // 是否完成（0未完成，1已完成）；默认值：0
    private Integer status; // 状态(1启用，0禁用）；默认值：1
    //附加字段
    private String message; // 消息内容
    private String itemStatusText;//事项流程状态字符串
    private String itemTypeText;//事项类型状态字符串
    private String auditorNickName; //审核人昵称
    private String auditorUserName;//审核人用户名
    private String userName;    //申请人用户名

    private Integer allCount;    //全部统计
    private Integer successCount;    //成功的事项统计
    private Integer processCount;    //进行中的事项统计

    //承诺期限
    private Integer promiseTerm;
    //法定期限
    private Integer legalTerm;


    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public Integer getTermLevel() {
        return termLevel;
    }

    public void setTermLevel(Integer termLevel) {
        this.termLevel = termLevel;
    }

    public Date getDeadline() {
        return deadline;
    }

    public void setDeadline(Date deadline) {
        this.deadline = deadline;
    }

    public Integer getItemId() {
        return itemId;
    }

    public void setItemId(Integer itemId) {
        this.itemId = itemId;
    }

    public String getItemName() {
        return itemName;
    }

    public void setItemName(String itemName) {
        this.itemName = itemName;
    }

    public Integer getPromiseTerm() {
        return promiseTerm;
    }

    public void setPromiseTerm(Integer promiseTerm) {
        this.promiseTerm = promiseTerm;
    }

    public Integer getLegalTerm() {
        return legalTerm;
    }

    public void setLegalTerm(Integer legalTerm) {
        this.legalTerm = legalTerm;
    }

    public String getItemType() {
        return itemType;
    }

    public void setItemType(String itemType) {
        this.itemType = itemType;
    }

    public Integer getAllCount() {
        return allCount;
    }

    public void setAllCount(Integer allCount) {
        this.allCount = allCount;
    }

    public Integer getSuccessCount() {
        return successCount;
    }

    public void setSuccessCount(Integer successCount) {
        this.successCount = successCount;
    }

    public Integer getProcessCount() {
        return processCount;
    }

    public void setProcessCount(Integer processCount) {
        this.processCount = processCount;
    }

    public Integer getUserId() {
        return userId;
    }

    public void setUserId(Integer userId) {
        this.userId = userId;
    }

    public Integer getAuditorId() {
        return auditorId;
    }

    public void setAuditorId(Integer auditorId) {
        this.auditorId = auditorId;
    }

    public Integer getItemStatus() {
        return itemStatus;
    }

    public void setItemStatus(Integer itemStatus) {
        this.itemStatus = itemStatus;
    }

    public Integer getComplete() {
        return complete;
    }

    public void setComplete(Integer complete) {
        this.complete = complete;
    }

    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }

    public String getMessage() {
        return message;
    }

    public void setMessage(String message) {
        this.message = message;
    }

    public String getItemStatusText() {
        return itemStatusText;
    }

    public void setItemStatusText(String itemStatusText) {
        this.itemStatusText = itemStatusText;
    }

    public String getAuditorNickName() {
        return auditorNickName;
    }

    public void setAuditorNickName(String auditorNickName) {
        this.auditorNickName = auditorNickName;
    }

    public String getAuditorUserName() {
        return auditorUserName;
    }

    public void setAuditorUserName(String auditorUserName) {
        this.auditorUserName = auditorUserName;
    }

    public String getUserName() {
        return userName;
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

    public String getItemTypeText() {
        return itemTypeText;
    }

    public void setItemTypeText(String itemTypeText) {
        this.itemTypeText = itemTypeText;
    }
}
